add support for per-target rustflags in .cargo/config
you can now specify rustflags on a per-target basis in .cargo/config:
``` toml
[target.x86_64-unknown-linux-gnu]
rustflags = ["x86", "specific", "flags"]
[target.arm-unknown-linux-gnueabi]
rustflags = ["arm", "specific", "flags"]
```
If both build.rustflags and target.*.rustflags are specified, the
target.* ones will be used.
As before RUSTFLAGS overrides either set.
closes #3153
r? @alexcrichton I've only added a smoke test and a precedence test. Let me know if I should add more tests!